As known in the field of computer networking, a stacking system or stack is a group of physical network devices that are connected together (via, e.g., external cables) to operate as a single, logical network device. Each member network device of a stack is referred to as a unit and includes (1) stacking ports for connecting to other units in the same stack, and (2) data ports for connecting to upstream/downstream hosts and/or networks.
A stacking system that supports IEEE 802.1BR port extender technology (referred to as an extended bridge) is composed of two types of units: controlling bridge (CB) units and port extender (PE) units. The CB units provide control and management plane functions for the extended bridge. For example, each CB unit may be a L2 switch or L2/L3 router with appropriate management plane components (e.g., management CPU, etc.). The CB units may be connected to each other via their stacking ports according to a linear or ring topology, thereby forming a core stack.
In contrast to CB units, each PE unit simply provides physical data port termination for the extended bridge. For example, each PE unit may be a L2 switch with X number of physical data ports, which appear as virtual data ports on the CB unit to which the PE unit is connected. Since PE units do not need to perform any management plane functionality, such units are typically less complex, and thus lower in cost, than CB units.
Under the existing 802.1BR standard, groups of PE units (referred to as PE chains) can connect to CB units as linear sub-stacks or trees. For example, FIG. 1 depicts an example extended bridge 100 comprising two CB units CB1 and CB2. A PE chain 102 is connected as a linear sub-stack to CB1, where PE chain 102 includes PE units PE1, PE2, PE3, PE4, and PE5 (daisy chained in that order from CB1). Each stacking link between PE units or between a PE unit and a CB unit comprises an uplink port (i.e., a port that provides connectivity towards a CB unit) and a cascade port (i.e., a port that provides connectivity down the PE chain). Thus, in the example of FIG. 1, the port on the CB1 side of link 104 is a cascade port while the port on the PE1 side of link 104 is an uplink port. Similarly, the port on the PE1 side of link 106 is a cascade port while the port on the PE2 side of link 106 is an uplink port. The data ports of each PE unit (i.e., the ports that connect to other LAN components) are referred to as extended ports.
One problem with the linear sub-stack configuration shown in FIG. 1 is that, if there is a link or unit failure along PE chain 102, several of the PE units can become non-operational. For instance, assume there is a link failure between PE units PE2 and PE3 in extended bridge 100. In this scenario, PE3, PE4, and PE5 will lose connectivity with CB1. If each PE unit includes 48 data ports, this will result in 48×3=144 data ports going out of service, which can cause significant disruption to the network environment in which the extended bridge is deployed.
The link failure scenario above can be mitigated to an extent by forming trunks (also known as link aggregation groups, or LAGs) comprising multiple physical ports/links between PE units PE1-PE5 and between CB unit CB1 and PE unit PE1. With such trunks in place, even if there is a failure of one physical link, data can continue to flow along the PE chain through the remaining active physical links. However, trunking does not address unit failures (i.e., failures that cause an entire PE unit to go down). For example, if PE unit PE2 fails or otherwise becomes non-operational, PE3-PE5 will lose connectivity with CB1, regardless of any trunking between those units.